/**
 * 本地存储服务
 * 统一管理localStorage和sessionStorage的存取操作
 */

/**
 * 存储用户token到sessionStorage
 * @param token 用户token
 */
export function setToken(token: string): void {
    sessionStorage.setItem('token', token);
}

/**
 * 从sessionStorage获取token
 * @returns 用户token
 */
export function getToken(): string | null {
    return sessionStorage.getItem('token');
}

/**
 * 从sessionStorage清除token
 */
export function removeToken(): void {
    sessionStorage.removeItem('token');
}

/**
 * 存储记住的用户名
 * @param username 用户名
 */
export function setRememberUsername(username: string): void {
    localStorage.setItem('remember_username', username);
}

/**
 * 获取记住的用户名
 * @returns 记住的用户名
 */
export function getRememberUsername(): string | null {
    return localStorage.getItem('remember_username');
}

/**
 * 清除记住的用户名
 */
export function removeRememberUsername(): void {
    localStorage.removeItem('remember_username');
}

/**
 * 存储用户信息到localStorage
 * @param userInfo 用户信息
 */
export function setUserInfo(userInfo: any): void {
    localStorage.setItem('userInfo', JSON.stringify(userInfo));
}

// /**
//  * 从localStorage获取用户信息
//  * @returns 用户信息
//  */
// export function getUserInfo(): any {
//     const userInfo = localStorage.getItem('userInfo');
//     return userInfo ? JSON.parse(userInfo) : null;
// }

// /**
//  * 从localStorage清除用户信息
//  */
// export function removeUserInfo(): void {
//     localStorage.removeItem('userInfo');
// }

// /**
//  * 清除所有用户相关存储
//  */
// export function clearUserStorage(): void {
//     removeToken();
//     removeUserInfo();
//     removeRememberUsername();
// }

/**
 * 清除所有认证相关的存储
 */
export function clearAuthStorage(): void {
    removeToken();
    removeRememberUsername();
    localStorage.removeItem('username');
    localStorage.removeItem('userInfo');
}

// /**
//  * 清除所有存储
//  */
// export function clearAllStorage(): void {
//     localStorage.clear();
// }